实验12 指针(4)指针与函数 |
您所在的位置:网站首页 › string 指针 › 实验12 指针(4)指针与函数 |
最具挑战性的挑战莫过于提升自我。——迈克尔·F·斯特利 实验12 指 针(4)指针与函数 [实验目的]
理解并掌握函数的指针等概念,学会使用指向函数的指针变量,学会编写返回指针值的函数。
[要点提示]
1.函数名代表函数的入口地址,函数的入口地址即为函数的指针。 2.指向函数的指针变量的定义格式: 数据类型标识符 (*指针变量名)(); 3.函数的调用可以通过函数名调用,也可以通过函数指针调用。 4.返回指针值的函数定义格式: 类型标识符 *函数名(形式参数表); 5.当函数有多个计算结果或返回值时,可以定义函数返回值的类型为指针类型。
[实验内容]
1. 指向函数的指针变量的定义和引用 2. 返回指针值的函数的定义和引用 3. 指向函数的指针变量作为函数参数
[实验步骤]
实验理解题1: 写一个函数,将字符串中的小写字母转换成大写字母。在main函数中输入字符串,并输出结果。读懂并输入程序,完成填空后输出结果. void main() { void convert(); /* 函数说明 */ char str[10]; printf("\nInput a string:"); scanf("%s", str); 【 】 (convert(str);) printf("\nOutput the string:%s", str); } void convert(char p[10]) /* 函数定义 */ { int i=0; while (*(p+i) !='\0') { if (*(p+i)='a' && *(p+i)='z') *(p+i)=*(p+i)-【 】; /* 将小写字母转换为大写字母 */ i++; } } 程序运行结果 Input a string: Nba Output the string: 【 NBA 】
实验理解题2: void main() { void convert(); /* 函数说明 */ char str[10]; 【 void (*p)() 】; printf("\nInput a string:"); scanf("%s", str); 【 p=convert 】; (*p)(str); /* 函数调用 */ printf("\nOutput the string:%s", str); } void convert(char p[10]) /* 函数定义 */ { int i=0; while (*(p+i) !='\0') { if (*(p+i)='a' && *(p+i)='z') *(p+i)=*(p+i)-32; /* 将小写字母转换为大写字母 */ i++; } } 程序运行结果 Input a string: Nba Output the string: 【 】
[第十章补充练习题]
一、 填空题: 1. 若有定义:char *str="I am a student." ;则字符串在存储单元中占_ __个字节。 3. 指向变量的指针,其含义是指该变量的______ 4. 设有以下程序段:则输出结果是______。 main( ) { char arr[ ]="abcde"; char *pt; for ( pt=arr; ptarr+5; pt++) printf("%s\n", pt ); } 5.指针是把另一个变量的 作为其值的变量。 6. 有三种值可以来初始化指针,它们是 、 和 。 7. 能够赋给指针 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |